/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package menudesktop;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.io.File;
import javax.swing.ImageIcon;
import javax.swing.JFileChooser;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.KeyStroke;

/**
 *
 * @author GoLiATh
 */
public class PanelSuperior extends JMenuBar implements ActionListener{

    private Ventana ventana;
    private JMenu menuArchivo, menuEditar, menuVer, menuAyuda;
    private JMenuItem menuCrearMenu, menuSalir, menuModificar, menuAcercaDe, 
                      menuHelp, menuVerPedidos, menuVerPedidosOk, menuCrearPlato,
                      menuCrearProducto, menuVerMapa;
    
    public PanelSuperior(Ventana ventana) {
        this.ventana = ventana;
        
        /*Se crean los JMenu y sus respectivos
         * JMenuItem de la barra de menu
         */
        //Se crea el JMenu Archivo
        this.menuArchivo = new JMenu();
        this.menuArchivo.setText("Archivo");
        
        //Se crea los JMenuItem del JMenu Archivo
        this.menuCrearMenu = new JMenuItem("Crear Menu");
        this.menuCrearMenu.setMnemonic( KeyEvent.VK_N );
        this.menuCrearMenu.addActionListener(this);
        
        this.menuCrearPlato = new JMenuItem("Crear Plato");
        this.menuCrearPlato.addActionListener(this);
        
        this.menuCrearProducto = new JMenuItem("Crear Producto");
        this.menuCrearProducto.addActionListener(this);
        
        this.menuSalir = new JMenuItem("Salir");
        this.menuSalir.setAccelerator( KeyStroke.getKeyStroke( KeyEvent.VK_X, ActionEvent.ALT_MASK ));
        this.menuSalir.setMnemonic( KeyEvent.VK_X );
        this.menuSalir.addActionListener(this);
        
        //Se crea el JMenu Editar
        this.menuEditar = new JMenu();
        this.menuEditar.setText("Editar");
        
        //Se crea los JMenuItem del JMenu Editar
        this.menuModificar = new JMenuItem("Modificar Menu");
        this.menuModificar.addActionListener(this);
        
        //Se crea el JMenu Ver
        this.menuVer = new JMenu();
        this.menuVer.setText("Ver");
        
        //Se crea los JMenuItem del JMenu Ver
        this.menuVerMapa = new JMenuItem("Mapa Restaurant");
        this.menuVerMapa.addActionListener(this);
        
        //Se crea los JMenuItem del JMenu Ver
        this.menuVerPedidos = new JMenuItem("Ver Pedidos");
        this.menuVerPedidos.addActionListener(this);
        
        //Se crea los JMenuItem del JMenu Ver
        this.menuVerPedidosOk = new JMenuItem("Ver Pedidos Realizados");
        this.menuVerPedidosOk.addActionListener(this);
        
        //Se crea el JMenu Ayuda
        this.menuAyuda = new JMenu();
        this.menuAyuda.setText("Ayuda");
        
        //Se crea los JMenuItem del JMenu Ayuda
        this.menuAcercaDe = new JMenuItem("Acerca de...");
        this.menuAcercaDe.setAccelerator( KeyStroke.getKeyStroke( KeyEvent.VK_A, ActionEvent.ALT_MASK ));
        this.menuAcercaDe.addActionListener(this);
        
        this.menuHelp = new JMenuItem("Ayuda");
        this.menuHelp.setAccelerator( KeyStroke.getKeyStroke( KeyEvent.VK_F1, ActionEvent.ALT_MASK ));
        this.menuHelp.addActionListener(this);
        
        /*Se agregan los JMenuItem a sus respectivos JMenu* 
         **************************************************/
        
        //MENU ARCHIVO
        this.menuArchivo.add(this.menuCrearMenu);
        this.menuArchivo.add(this.menuCrearPlato);
        this.menuArchivo.add(this.menuCrearProducto);
        this.menuArchivo.add(this.menuSalir);
        
        //MENU EDITAR
        this.menuEditar.add(this.menuModificar);
        
        //MENU VER
        this.menuVer.add(this.menuVerMapa);
        //this.menuVer.add(this.menuVerPedidos);
        this.menuVer.add(this.menuVerPedidosOk);
        
        //MENU AYUDA
        this.menuAyuda.add(this.menuAcercaDe);
        this.menuAyuda.add(this.menuHelp);
        
        /*Se agregan los componentes JMenu 
         * al Frame         * 
         */
        this.add(menuArchivo);
        this.add(menuEditar);
        this.add(menuVer);
        this.add(menuAyuda);
    }

    @Override
    public void actionPerformed(ActionEvent e) 
    {
        if(e.getSource()==this.menuCrearMenu)
        {
            this.ventana.cambiarAPanelMenu();
        }
        
        if(e.getSource()==this.menuCrearPlato)
        {
            this.ventana.cambiarAPanelPlatos();
        }
        
        if(e.getSource()==this.menuCrearProducto)
        {
            this.ventana.cambiarAPanelProductos();
        }
        
        if(e.getSource()==this.menuSalir)
        {
            System.exit(0);
            
        }
        
        if(e.getSource()==this.menuVerMapa)
        {
            this.ventana.cambiarAPanelMapa();
        }
        
        if(e.getSource()==this.menuAcercaDe)
        {
            ImageIcon icon;
            icon = new ImageIcon("src/resource/hualqui.jpg");
                JOptionPane.showMessageDialog(null,
                    "Menu Desktop\n"
                        + "Versión 1.0\n"
                        + "Usando Java SE7\n"
                        + "Programadores:\n"
                        + "       Hernan Galvez Neculman\n"
                        + "       Carlos Hernandez Rojas\n"
                        + "       Hector Herrera Gonzales\n"
                        + "Agradecimientos:\n"
                        + "       Francisco Anderson Huaiquipán Castillo.\n"
                        + "       ORACLE CORPORATION.",
                    "MENU DESKTOP",
                    JOptionPane.INFORMATION_MESSAGE,
                    icon);
        }
        
        if(e.getSource()==this.menuHelp)
        {
            JOptionPane.showMessageDialog(null,    "                       ¿Como Crear un Catalogo?                  \n "+
                                                    "     Primero debes ir a Archivo, luego Crear Menu ó Simplemente  \n "+
                                                    "   oprimir el boton con un icono de ´CHEF´ para posteriormente   \n "+
                                                    "   llenar los datos correspondientes al menu que quieras crear y \n "+
                                                    "   finalmenteoprimir el boton guardar.   \n"+
                                                    "                       ¿Como Ver un Pedido?   \n"+
                                                    "     Para revisar alguna pedido en particular realizado por el  \n"+
                                                    "   cliente desde su aplicacion Android sólo debes oprimir en Ver\n"+
                                                    "   y luego en ´Ver Pedidos´ o tambien oprimiendo el boton con   \n"+
                                                    "   un icono de ´Pergamino y Pluma´, a continuacion se mostraran \n"+
                                                    "   todos los pedidos realizados por los usuarios en una tabla.  \n"
                                          );
            
        }
        
         if(e.getSource()==this.menuModificar)
        {
        }
         
         if(e.getSource()==this.menuVerPedidos)
        {
        }
         
         if(e.getSource()==this.menuVerPedidosOk)
        {
            this.ventana.cambiarAPanelPedidos();
        }
    }
    
}
